There is a large investment in autonomic computing in the industry. One of the more promising areas of technology is automated self-diagnosis. One major form of self-diagnosis works by identifying known problems from a symptom database that contains problem signatures. Problem signatures are a programmatically interpretable form of a problem symptom. For example, for an error condition in a software product, the symptom might be a function stack condition: function1( )+53; function2( )+234; function3( )+643; function4( )+34; function5( )+534.
The problem signature for this particular trace could be as simple as the function ordering: function5->function4->function3->function2->function 1. The problem signature could also be much more complex, including the function names and offsets (also: type of trap, function arguments, top functions on the stack, etc, etc). It could also include other information types: statistics, configuration parameters, and key performance indicators. A symptom database may also contain one or more actions for each problem signature. These actions should be programmatic instructions to solve the problem and/or human readable instructions for what the problem is and how to solve it.
The challenge with symptom databases is that in order to be effective, they must contain a significant number of problem signatures. The more effective a symptom database is, the more problem signatures it would contain, all with their associated explanations and actions.
One of the goals of using symptom databases is to ship them with a product and install them locally and securely on a customer site. This is where the current technology is lacking. Since such a database contains a thorough and detailed list of problems for a product, and it could identify sensitive problems such as data corruption or other major problems, fallen into the wrong hands it could be used as very effective marketing material for competitors of the product developer.
Applying encryption on a blanket-basis to the entire symptom database would fail since watching the decryption mechanism via a debugger would reveal to a third party how to decrypt the entire symptom database. The invention does address this problem.